#pragma once

#include "gameobject.h"
#include "../SGD Wrappers/SGD_Math.h"
#include "Physics.h"

class RadiationBarrel : public GameObject
{
private:

	float range;
	tVector2D center;
	tVector2D direction;
	float dist;

	//////////////////////////////////////////////////
	// temp linecast stuff
	tVector2D point;
	int distance;
	bool isPushed;

public:
	// Constructor
	RadiationBarrel(void);

	// Destructor
	~RadiationBarrel(void);

	//////////////////////////////////////////////////
	// GameObject Methods:
	void Update(float deltaTime);
	void Render(void) const;
	void HandleCollision(GameObject& other, CollisionInfo& info)	override;
	void ResetToCheckPoint();

	//////////////////////////////////////////////////
	// Accessors:
	float GetRange(void) const { return range; }

	//////////////////////////////////////////////////
	// Mutators:
	void SetRange(float range);

	int Push(CollisionSide side, int amtToMove);

};

